Metaprogramming Forced Moves
نویسنده
چکیده
1 LIP6, Université Pierre et Marie Curie, 4 Place Jussieu, 75252 Paris Cedex 05, France. [email protected] Abstract. Knowledge about forced moves enables to select a small number of moves from the set of possible moves. It is very important in complex domains where search trees have a large branching factor. Knowing forced moves drastically cuts the search trees. We propose a language and a metaprogram to create automatically the knowledge about interesting and forced moves, only given the rules about the direct effects of the moves. We describe the successful application of this metaprogram to the game of Go. It creates rules that give complete sets of forced moves.
منابع مشابه
Taxonomy of the Fundamental Concepts of Metaprogramming
Although widely used in software engineering, metaprogramming is often misunderstood. The researchers often disagree what concepts characterize metaprogramming. The concepts of metaprogramming are often used without acknowledging the usage of metaprogramming itself. We overview the examples and definitions of metaprogramming in computer science, identify, describe and discuss the fundamental co...
متن کاملRe ection in Oberon
We introduce metaprogramming facilities into the Oberon V system Metaprogramming means that a module can access the struc ture of other modules i e procedures types run time data at run time We discuss how type safety can be enforced in an environment with strong typing Finally we show how metaprogramming can be used to implement an easy to use database interface and conclude with a com parison...
متن کاملRun-time Manipulation of Programs in a Statically-Typed Language
This article is an extended abstract of a doctoral dissertation on metaprogramming and programming language design. A metaprogramming model is studied and implemented in a statically–typed pure object– oriented programming language Zero. The object model of language is based on closures which enables metaprogramming model to achieve a high degree of dynamic manipulation, normally only found in ...
متن کاملUnification of Compile-Time and Runtime Metaprogramming in Scala
Metaprogramming is a technique that consists in writing programs that treat other programs as data. This paradigm of software development contributes to a multitude of approaches that improve programmer productivity, including code generation, program analysis and domain-specific languages. Many programming languages and runtime systems provide support for metaprogramming. Programming platforms...
متن کامل